<html>
<head><meta charset="utf-8"><title>2021-03-03 meeting agenda · t-compiler/wg-prioritization · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/index.html">t-compiler/wg-prioritization</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html">2021-03-03 meeting agenda</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="228590466"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228590466" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> apiraino <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228590466">(Mar 03 2021 at 13:29)</a>:</h4>
<p><span class="user-mention" data-user-id="123856">@Vadim Petrochenkov</span> I see PR <a href="https://github.com/rust-lang/rust/issues/82556">#82556</a> ("add dynamically-linked musl targets") is labeled as <code>S-waiting-on-team</code> but the discussion is quite ongoing. Would you like to bring the topic to tomorrow's compiler meeting (as we usually do with <code>S-waiting-on-team</code> labels) or can wait until the discussion settles down?</p>



<a name="228592253"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228592253" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228592253">(Mar 03 2021 at 13:41)</a>:</h4>
<p>I won't be able to attend the meeting, but I'll try to add this to the meeting agenda.</p>



<a name="228601195"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228601195" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> apiraino <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228601195">(Mar 03 2021 at 14:33)</a>:</h4>
<p>no worries. I've tried <a href="https://hackmd.io/b3srlh3CR5aSTQPDi5I3tA?view#PRs-S-waiting-on-team">summarizing a bit</a>, feel free to improve! thanks</p>



<a name="228601649"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228601649" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Léo Lanteri Thauvin <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228601649">(Mar 03 2021 at 14:36)</a>:</h4>
<p>Also FYI <span class="user-mention" data-user-id="250987">@apiraino</span> I took the liberty of accepting <a href="https://github.com/rust-lang/compiler-team/issues/408">compiler-team#408</a> and adding it as accepted in the agenda</p>



<a name="228601917"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228601917" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> apiraino <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228601917">(Mar 03 2021 at 14:37)</a>:</h4>
<p>thanks <span class="user-mention" data-user-id="255061">@Léo Lanteri Thauvin</span> :)</p>



<a name="228681359"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228681359" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228681359">(Mar 03 2021 at 22:36)</a>:</h4>
<p>Summary for <a href="https://github.com/rust-lang/rust/pull/82556">https://github.com/rust-lang/rust/pull/82556</a> from me:</p>
<p>Currently musl-based targets (which have tiers 2 and 3) exhibit some "non-standard" behavior (if we take glibc-based targets as the standard) - they statically link libc by default, and also use self-contained linking by default (<a href="https://doc.rust-lang.org/rustc/codegen-options/index.html#link-self-contained">https://doc.rust-lang.org/rustc/codegen-options/index.html#link-self-contained</a>).<br>
This behavior is considered unsatisfactory by various people, especially on musl-based platforms, and there are multiple ways to address the problems.</p>
<ul>
<li>
<p>Change existing musl targets to behave in standard glibc-like way.<br>
    - Pros: This is what people working on musl and with musl-based Linux distributions want.<br>
    - Cons: Uncertain number of build/CI scripts break. The old behavior can be restored by adding <code>-C target-feature=+crt-static -C link-self-contained=yes</code> to the target's rustc flags. Good advertisement will be needed.<br>
    - Pros: Uncertain number of build/CI scrips that are currently implicitly broken due to not treating musl specially gets fixed (<a href="https://github.com/rust-lang/rust/pull/82556#issuecomment-788305227">https://github.com/rust-lang/rust/pull/82556#issuecomment-788305227</a>).<br>
    - Pros: The target's behavior is straightforward and predictable.</p>
</li>
<li>
<p>Add a new "musl done right" target behaving in standard glibc-like way.<br>
    - Cons: CI is stressed by adding a large number of new tier 2 targets.<br>
    - Cons: need to come up with a name for the target.<br>
    - Pros: nothing is broken.<br>
    - Cons: nothing is fixed either.<br>
    - Pros: The target's behavior is straightforward and predictable.</p>
</li>
<li>
<p>Change existing musl targets to use more heuristics and behave in host-dependent way.<br>
    - Pros: nothing or almost nothing is broken.<br>
    - Cons: some cases like musl targets on musl hosts are fixed using heuristics.<br>
    - Pros: The targets' behavior becomes pretty unpredictable.</p>
</li>
</ul>



<a name="228682053"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228682053" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228682053">(Mar 03 2021 at 22:42)</a>:</h4>
<blockquote>
<ul>
<li>Pros: The targets' behavior becomes pretty unpredictable.</li>
</ul>
</blockquote>
<p>I think you meant to say "Cons" here</p>



<a name="228688719"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228688719" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> apiraino <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228688719">(Mar 03 2021 at 23:35)</a>:</h4>
<p>fantastic summary, thank you <span class="user-mention" data-user-id="123856">@Vadim Petrochenkov</span></p>



<a name="228736510"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228736510" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228736510">(Mar 04 2021 at 08:50)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/227806-t-compiler.2Fwg-prioritization/topic/2021-03-03.20meeting.20agenda/near/228682053">said</a>:</p>
<blockquote>
<blockquote>
<ul>
<li>Pros: The targets' behavior becomes pretty unpredictable.</li>
</ul>
</blockquote>
<p>I think you meant to say "Cons" here</p>
</blockquote>
<p>Yes, "Pros" and "Cons" are swapped for the last two entries in the list.</p>



<a name="228736598"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03%20meeting%20agenda/near/228736598" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/227806-t-compiler/wg-prioritization/topic/2021-03-03.20meeting.20agenda.html#228736598">(Mar 04 2021 at 08:51)</a>:</h4>
<p>(The message is too old to edit it in place.)</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>